package event.numberevent;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**rappresenta un'annotazione di un metodo che esprime il range di validita' di tale
 * metodo. L'annotazione trova il suo uso in un'interfaccia che estende NumberListener:
 * in tale interfaccia ogni metodo ha un range di validita' che viene eseguito se e solo
 * se lo stato rientra nel particolare range. Tale range tuttavia non puo' che essere
 * inserito in un'annotazione. Per questo ogni metodo che indica le azioni di stato del NumberListener
 * deve essere annotato con questa annotazione, in modo che il computer capisca se tale metodo
 * va eseguito o meno.
 * 
 * @author koldar
 * @version 1.0
 */
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = ElementType.METHOD)
public @interface Range {

	public double inf();
	public double sup();
	public boolean infIncluded() default true;
	public boolean supIncluded() default true;
}
